#pragma once

#include "Message.h"
namespace _FOGGE_
{
	namespace _MSG_
	{
		__interface  _FoGGEExport iMessageSend
		{

			Message *GetNewMassage(UINT MsgID);
			HRESULT SendMessage(Message *ptrMSG,Message *ptrRetMSG =NULL);// send message to a module and wait until finished
			void MultiSendMessage(Message *ptrMSG);// send message to many modules and wait until mfinished
			void PostMessage(Message *ptrMSG);// post message and return immediately
			void BroadcastMessage(Message *ptrMSG);// post message to many modules and return immediately
		};
	}
}